<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>文章列表</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/iconfont.css">
    <link rel="stylesheet" href="css/main.css">
    <!-- jq -->
    <script src="./libs/jquery-1.12.4.min.js"></script>
    <!-- 模板引擎 -->
    <script src="./libs/template-web.js"></script>
    <!-- 导入日期插件 -->
    <script src="./libs/jedate/js/jedate.js"></script>
    <link rel="stylesheet" href="./libs/jedate/css/jeDate-test.css">
    <link rel="stylesheet" href="./libs/jedate/css/jedate.css">
    <!-- 导入富文本插件 -->
    <script src="./libs/wangEditor/wangEditor.min.js"></script>
    <!-- 导入bootstrap的js文件 -->
    <script src="./libs/bootstrap/js/bootstrap.min.js"></script>
</head>

<body>
    <div class="container-fluid">
        <div class="common_title">
            文章编辑
        </div>
        <div class="container-fluid common_con">
            <form class="form-horizontal article_form" id="form">
                <div class="form-group">
                    <label for="inputTitle" class="col-sm-2 control-label">文章标题：</label>
                    <div class="col-sm-10">
                        <input type="text" name="title" class="form-control title" id="inputTitle" value="文章标题文字">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCover" class="col-sm-2 control-label">文章封面：</label>
                    <div class="col-sm-10">
                        <img src="images/pic06.jpg" class="article_cover">
                        <input name="cover" type="file" id="inputCover">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCategory" class="col-sm-2 control-label">文章类别：</label>
                    <div class="col-sm-4 col-lg-2">
                        <select class="form-control category" name="categoryId">
                            <option>类别一</option>
                            <option>类别二</option>
                            <option>类别三</option>
                            <option selected>类别四</option>
                            <option>类别五</option>
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">发布时间：</label>
                    <div class="col-sm-4 col-lg-2">
                        <input type="text" class="jeinput" id="testico" placeholder="YYYY-MM-DD" name="date">
                        <div class="icons jebtns">
                        </div>
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputEmail3" class="col-sm-2 control-label">文章内容：</label>
                    <div class="col-sm-10">
                        <div id="edit">
                            <p>欢迎使用 <b></b> 富文本编辑器</p>
                        </div>
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-success btn-edit">修改</button>
                        <button type="submit" class="btn btn-default btn-draft">存为草稿</button>
                    </div>
                </div>
            </form>
        </div>
    </div>

    <!-- 模态框代码 -->
    <div class="modal fade" tabindex="-1" role="dialog" id='myModal'>
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
                            aria-hidden="true">&times;</span></button>
                    <h4 class="modal-title">温馨提示</h4>
                </div>
                <div class="modal-body">
                    <p></p>
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-default" data-dismiss="modal">确定</button>
                </div>
            </div><!-- /.modal-content -->
        </div><!-- /.modal-dialog -->
    </div><!-- /.modal -->

    <script src="./libs/https.js"></script>
    <!-- 准备文章列表模板 -->
    <script type="text/html" id="tpl-category">
        {{each}}
        <option value="{{$value.id}}">{{$value.name}}</option>
        {{/each}}
    </script>

    <script>
        $(function () {
            // 1. 设置封面预览功能
            $('#inputCover').on('change', function () {
                $('.article_cover').attr('src', URL.createObjectURL(this.files[0]))
            })
            // 2. 发起ajax请求,获得文章分类
            $.ajax({
                type: 'get',
                url: BigNew.category_list,
                success: function (res) {
                    // console.log(res);
                    if (res.code == 200) {
                        let data = res.data
                        // 3. 结合模板引擎,生成结构数据
                        let htmlstr = template('tpl-category', data)
                        $('.category').html(htmlstr)
                    }

                }
            })
            // 4. 给日历图标设置点击事件
            $('.jebtns').on('click', function () {
                // 调用日期插件的核心方法
                jeDate('#testico', {
                    //使input框的点击事件取消
                    trigger: false,
                    //设置显示在input框的显示格式
                    format: 'YYYY-MM-DD',
                    //设置选择日期的主体颜色
                    theme: { bgcolor: "black", color: "orange", pnColor: "pink" },
                    zIndex: 20000
                })
            })

            // 5. 调用富文本插件方法
            const E = window.wangEditor
            const editor = new E('#edit')
            editor.create()

            // 6. 获得跳转文章的id!!!!!!
            let id = window.location.search.split('=')[1]

            // 7. 根据文章id发起ajax请求,获得数据
            $.ajax({
                type: 'get',
                url: BigNew.article_search,
                data: {
                    id: id
                },
                success: function (res) {
                    // console.log(res)
                    if (res.code == 200) {
                        // 8. 将返回的数据渲染到指定结构
                        let data = res.data;
                        //文章标题
                        $('.title').val(data.title);
                        // 文章封面
                        $('.article_cover').attr('src', data.cover);
                        // 文章类别
                        $('.category').val(data.categoryId);
                        // 发布时间
                        $('#testico').val(data.date);
                        // 文本框内容
                        editor.txt.text(data.content);
                    }
                }
            })

            // 9. 给修改按钮设置点击事件
            $('.btn-edit, .btn-draft').on('click', function (e) {
                e.preventDefault();
                // 10. 区分按钮的目的
                let state = '';
                if ($(this).text() == '修改') {
                    state = '已发布';
                } else {
                    state = '草稿';
                }

                // 11. 利用FormData获得数据
                let fd = new FormData(document.querySelector('form'));// title cover date categoryId

                // 12. 手动添加fd成员
                fd.append('id', id);
                fd.append('content', editor.txt.text());
                fd.append('state', state);
                // 如果发现请求报错,请打印fd中的7个成员
                // console.log(fd.get('title'));
                // console.log(fd.get('cover'));
                // console.log(fd.get('date'));
                // console.log(fd.get('categoryId'));
                // console.log(fd.get('content'));
                // console.log(fd.get('state'));
                // console.log(fd.get('id'));
                // 13. 发起ajax请求,修改文章
                $.ajax({
                    type: 'post',
                    url: BigNew.article_edit,
                    data: fd,
                    contentType: false,
                    processData: false,
                    success: function (res) {
                        // console.log(res);
                        if (res.code == 200) {
                            $('.modal-body p').text(res.msg)
                            $('#myModal').modal()

                            $('#myModal').on('hidden.bs.modal', function () {
                                window.location.href = './article_list.html'
                            })
                        }
                    }
                })
            })
        })
    </script>
</body>

</html>